1. 数据处理和分析

1.1 数据预处理

读取从 UN Comtrade Database 获取的 2019 年全球铜及其精炼物(2603)贸易记录,并处理:

  1. 去除贸易对象为 World 的数据行
  2. 并保留关心的数据列:报告者及其代码、贸易对象及代码、贸易类型、贸易额

!注:数据中上报者(Reporter)可能包含国家和地区以及中国港澳台地区,为方便起见以下统称“国家”.

1.2 数据分析与检验

  1. 获取贸易参与者
  1. 数据检验

从上面数据可以看出,各国上报的记录显然是有出入的,即上报记录中涉及的国家数要比上报数据的国家数多,这至少说明了一些参与了贸易的国家没有上报贸易记录

下面以中国上报的记录为例检查和说明:

    1. 查看中国上报的进口记录
    2. 查看中国进口对象上报的对中国的出口记录

对比上面两个表格,显然各国出入口数据是普遍有出入的:

首先,进出口对象数量上就不一致:中国上报记录中显示,中国 2019 年共从 56 个国家进口铜资源;而只有 43 个国家上报了对中国出口铜资源的记录

其次,对于有些进出口双方都上报了记录的情况,双方上报的贸易金额不一致,有的甚至出入较大

这可能是有以下的原因导致的:

  1. 由于政策和统计方法不同导致的上报数据的结果不同.
  2. 由于货物在进出口过程中经第三方国家中转,而进出口国家对于出入口的目标国家登记不一致导致.
  3. 其他可能原因.

2. 构建网络

根据以上数据和分析,构建有向加权网络是合适的,具体如下:

  1. 以国家为节点,进出口关系为指向(出口国 -> 进口国),贸易金额为权重,构建有向加权图

  2. 对于进出口关系,忽略各个国家之间上报数据的差异,即只要在任何一条记录中出现进出口关系即双方存在贸易关系,则为对应节点添加连边

  3. 对于贸易金额,若两方上报金额不一致则取两者均值

绘制网络:

3. 基于连接信息熵的节点重要性

3.1 定义

3.1.1 连接度 $A_i$

定义有向加权网络中节点的连接度为 $$ A_i = \theta\sum_{j\in \Gamma_{i\_in}}k_j + (1-\theta)\sum_{j\in \Gamma_{i\_out}}k_j $$

其中 $\Gamma_{i\_in}$ 是指向节点 $i$ 的邻居节点集,$\Gamma_{i\_out}$ 是由节点 $i$ 指向的邻居节点集;$k_j$ 是对应节点的度;$\theta \in [0,1]$ 是参数.

具体地,有向加权网络中,定义节点 $k_j$ 的度为:

$$ \begin{aligned} k_j &= \lambda k_i^{in} + (1-\lambda)k_i^{out} \\ &= \lambda \sum_{i=1}^m w_{ij} + (1 - \lambda)\sum_{i=1}^m w_{ji} \end{aligned} $$

其中 $w_{uv}$ 表示由节点 $u$ 指向节点 $v$ 的边的权重,若该边不存在则记为 $0$;$\lambda$ 为出入边的权重参数.

具体地上式表示,在节点 $j$ 与其邻居节点的连边中,按权重求出入连边的权重和.

3.1.2 连边概率 $P_{i_j}$

定义连边概率 $P_{i_j}$ 为节点 $i$ 被其邻居节点 $j$ 选择进行连边的概率: $$ P_{i_j} = \frac{k_i}{A_j}, \ \ \ \ (j\in\Gamma_i) $$

3.1.3 连接信息熵 $E_i$

定义有向网络中连接信息熵如下:

$$ E_i = \sum\limits_{j\in\Gamma_j}\left| P_{i_j}\log_2 P_{i_j} \right| $$

这里取绝对值是因为 $\theta$ 加权的原因,$P_{i_j}$ 可能大于 $1$

4. 实验和结果

4.1 求各节点的连接信息熵

根据第 3 节给出的定义,求各节点的连接信息熵,并将前 20 的连接信息熵绘图如下:

实验中取 $\theta, \lambda = 0.7$.

4.2 层次聚类

对个节点的信息熵进行层次聚类,选择聚类数为 6;并为每个节点设置聚类标签,按熵值从大到小标记为 1 - 6

4.3 选取属性并进行离散化划分

选取以下属性,并选择聚类层数:

属性值由大到小标记为 1-6

4.5 生成决策树

使用 ID3 算法生成决策树

根据决策树生成决策表:

4.6 层次风险模型

  1. 条件属性的概率分布
$$ p_{jA_i} = \frac{\#jA_i}{N} $$

其中 $A_i$ 表示条件属性,$jA_i$ 表示条件属性 $A_i$ 的属性取值. $\#jA_i$ 表示属性 $A_i$ 取 $j$ 时的样本数,$N$ 表示总样本数。

  1. 决策规则的概率分布
$$ P_{\text{Rule}l} = p_{jA_i}\cdots p_{jA_p} $$

其中,$p_{jA_k}$ 表示在决策规则 $l$ 中对应的各条件属性 $A_k$ 的取值为 $j$ 的概率.

这里将各条件属性的分布近似看做为相互独立,即某条件属性的取值不受其他条件属性取值的影响

  1. 节点脆弱性风险

节点脆弱性在对应离散分区下的层次风险:

$$ P_j = \sum_{l=1}^MP_{\text{Rule}l}(j_{A_n}) $$